package com.tunnel.home.entity;

import java.util.Date;

import org.axe.annotation.persistence.ColumnDefine;
import org.axe.annotation.persistence.Comment;
import org.axe.annotation.persistence.Id;
import org.axe.annotation.persistence.Table;
import org.axe.annotation.persistence.Unique;
import org.axe.constant.IdGenerateWay;

@Table(tableName="pay_log",comment="支付记录")
public class PayLog {
	
	@Comment("ID")
	@Id(idGenerateWay=IdGenerateWay.AUTO_INCREMENT)
	private Long id;
	
	@Comment("User.id")
	private long userId;
	
	@Unique
	@Comment("外部订单号，32位，不重复")
	private String outTradeNo;
	
	@Comment("金额，小数点两位")
	private String fee;
	
	@Comment("商品信息")
	private String goods;
	
	@Comment("支付请求报文")
	private String payLoad;
	
	@Comment("支付二维码的链接")
	private String payCodeUrl;
	
	@Comment("支付回调报文，限制16M")
	@ColumnDefine("MEDIUMTEXT")
	private String notify;
	
	@Comment("状态 0.待支付 1.支付完成 -1.已过期")
	private int status;
	
	@Comment("生成时间")
	private Date createTime;
	
	@Comment("过期时间")
	private Date expireTime;

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public long getUserId() {
		return userId;
	}

	public void setUserId(long userId) {
		this.userId = userId;
	}

	public String getOutTradeNo() {
		return outTradeNo;
	}

	public void setOutTradeNo(String outTradeNo) {
		this.outTradeNo = outTradeNo;
	}

	public String getFee() {
		return fee;
	}

	public void setFee(String fee) {
		this.fee = fee;
	}

	public String getGoods() {
		return goods;
	}

	public void setGoods(String goods) {
		this.goods = goods;
	}

	public String getPayLoad() {
		return payLoad;
	}

	public void setPayLoad(String payLoad) {
		this.payLoad = payLoad;
	}

	public String getPayCodeUrl() {
		return payCodeUrl;
	}

	public void setPayCodeUrl(String payCodeUrl) {
		this.payCodeUrl = payCodeUrl;
	}

	public String getNotify() {
		return notify;
	}

	public void setNotify(String notify) {
		this.notify = notify;
	}

	public int getStatus() {
		return status;
	}

	public void setStatus(int status) {
		this.status = status;
	}

	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public Date getExpireTime() {
		return expireTime;
	}

	public void setExpireTime(Date expireTime) {
		this.expireTime = expireTime;
	}
	
}
